Some types of non-volatile memory (for example, flash memory) cannot easily modify existing data in individual memory locations because they can only erase memory in entire blocks. When data changes are infrequent, changing the contents of the existing data can adequately be handled by copying the entire block to a new, previously erased, block with the new data values incorporated into the new block, and then erasing the old block so it will subsequently be available for use as a new block. When data changes are more frequent, a better technique may be to copy the page that is being changed into a new, previously empty page within the same block, with the new data values incorporated into the new page. This reduces the number of erase operations, which are costly in terms of time and effective lifetime of the memory, but it is more complicated because the new, current page must be distinguished from the old, stale page which still resides in memory. Multiple changes to the same data may result in several pages containing different versions of that data, only one of which is current and correct. Various techniques may be used to keep track of which pages are current and which are not, but this information is generally kept in volatile storage. A power-fail event wipes out this volatile information, thus requiring other techniques to reconstruct which pages are the current and correct ones upon recovery from the power fail. Assigning an incrementing, unique sequence number to each newly-written page, and placing that sequence number into the metadata of that page is one method that permits the most recent version of the page to be identified upon a power-fail recovery. For example, of all pages associated with the same logical address (according to each page's meta-data), the page with the highest sequence number is the most recent version of the page, and therefore the correct one. However, using sequence numbers that are large enough to be unique throughout the lifetime of the memory requires that many bits be reserved for the sequence number. Page metadata space is at a premium, and this approach is costly in that it uses a significant amount of metadata space.